import sounddevice as sd
import soundfile as sf  # 用于保存 WAV 文件

# 设置参数
samplerate = 44100  # 采样率
duration = 5  # 捕捉声音的时间长度（秒）
output_file = 'captured_audio.wav'

# 捕捉声音
print("开始捕捉声音，请说话...")

audio_data = sd.rec(int(duration * samplerate), samplerate=samplerate, channels=2, dtype='float32')
sd.wait()  # 等待录制结束
print("声音捕捉完成。")

# 保存为 WAV 文件
sf.write(output_file, audio_data, samplerate)
print(f"音频已保存为 {output_file}")